var http = require('http')
var fs = require('fs')

// 1. 创建Server

var server = http.createServer()

// 2. 监听Server的request请求事件，设置请求处理函数
// 一个请求对应一个响应，如果一个请求的过程中,已经结束的响应，不重复发送响应
// 没有请求没有响应

// 使用Apache 服务器软件，这个软件默认有个www目录，所有存放在www目录中的资源都可以通过网址来浏览
// 127.0.0.1/a.txt
// 127.0.0.1/index.html

var wwwDir = './www/'
server.on('request', function (req, res) {
    console.log(111)
    fs.readFile('./template.html', function (err, data) {
        if (err) {
            return res.end('404 Not Found')
        }

        // 1. 如何得到wwwDir目录中文件名和目录名
            // fs.readFile
        // 2. 如何将得到的文件名和目录名替换到Template.html
            //   2.1 在Template.html 中预留特定的标识位置
            //   2.2 根据file生成需要的html内容
            // 模板引擎
         fs.readdir(wwwDir, function(err, files) {

            console.log(333)
             if(err) {
                 return res.end('Can not find www dir')
             }
             // 2.2 生成替换的内容
             var content = ''
             files.forEach(function(item) {
                 content += `
                 <tr>
                    <td>
                        <i class="icon icon-js"></i>
                    </td>
                    <td class="perms">
                        <code>(-rw-r--r--)</code>
                    </td>
                        <td class="file-size"><code>220B</code>
                    </td>
                    <td class="display-name"><a href="http://192.168.31.218:8080/1-%E4%BB%A3%E7%A0%81%E5%88%86%E5%8F%B7%E9%97%AE%E9%A2%98.js">${item}</a>
                    </td>
                </tr>
                 `
             })

             // 2.3 替换需要的内容
             data = data.toString().replace('====', content)
             // 3. 发送解析过后响应页面
             res.end(data)

         })

    })
})
// 3. 绑定端口号，启动服务
server.listen(3000, function () {
    console.log('running!!')
})